Partial Evaluation of Computation Process - An Approach to a Compiler-Compiler
نویسنده
چکیده
This paper reports the relationship between formal description of semantics (i.e., interpreter) of a programming language and an actual compiler. The paper also describes a method to automatically generate an actual compiler from a formal description which is, in some sense, the partial evaluation of a computation process. The compiler-compiler inspired by this method differs from conventional ones in that the compilercompiler based on our method can describe an evaluation procedure (interpreter) in defining the semantics of a programming language, while the conventional one describes a translation process.
منابع مشابه
Partial Evaluation of Computation Process, Revisited
A1: After graduating from the Department of Mathematics at Hokkaido University (in Sapporo) in 1965, I engaged in developing an interpreter and a compiler for Lisp 1.5 at Hitachi Central Research Laboratory. The work was done based only on McCarthy’s manual [12]. When I was implementing the compiler, I realized that I was just looking at the interpreter written in the manual. Then the idea that...
متن کاملTopics in Semantics-based Program Manipulation
Programming is at least as much about manipulating existing code as it is about writing new code. Existing code is modified, for example to make inefficient code run faster, or to accommodate for new features when reusing code; existing code is analyzed, for example to verify certain program properties, or to use the analysis information for code modifications. Semantics-based program manipulat...
متن کاملData / Signal Bus Processing Module ( PM ) Top − Level Interconnection Network Processing Module ( PM ) Processing Module ( PM ) Processing Module ( PM
This paper describes a compiler that generates both hardware and controlling software for eld-programmable compute accelerators. By analyzing a source program together with part of its input, the compiler generates VHDL descriptions of functional units that are mapped on a set of FPGA chips and an optimized sequence of control instructions that run on the customized machine. The primary techniq...
متن کاملBinding Time Analysis for Bits
Using a high level language (HLL) to specify a computation for synthesis in ASIC or FPGA hardware requires aggressive compiler analysis to capture bit-level program characteristics that cannot normally be expressed in a HLL but which are important to specializing and optimizing logic for size and speed. It is useful, for instance, to identify unchanging bits of a variable and subsequently remov...
متن کاملAnalysis Type Lex / Parse Translation Optimizer Back End AST AST
This paper proposes an alternate structure for C++ compilers. Type analysis is removed from the compiler and replaced with a type system library which is treated as source code by the compiler. Type computations are embedded in the intermediate language of the compiler, and partial evaluation is used to drive type analysis and template in-stantiation. By making simple changes to the behavior of...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Higher-Order and Symbolic Computation
دوره 12 شماره
صفحات -
تاریخ انتشار 1999